package zl.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
*@Documented 注释 指示某一类型的注释将通过 javadoc 和类似的默认工具进行文档化。

*/
@Documented  

/**
*@Retention 注释  只能用来修饰注释类型 指示该注释要保留多久
*此注释的值也是枚举类型
*此处代表编译器将把该注释记录在类文件中，在运行时 VM 将保留注释，
*因此可以反射性地读取。
*/
@Retention(RetentionPolicy.RUNTIME)

/**
*@Target 注释  只能用来修饰注释类型
*此注释的值也是枚举类型
*此处代表该注释只是用于：类、接口（包括注释类型）或枚举声明
*/
@Target(ElementType.TYPE)  	
public @interface Entity {   //@interface  自定义注释的语法
	public String name();	//注释类的属性 只能public
	public String author() default "SuperZL";  //带默认值的属性
}
